package com.mtable.base;

import java.util.List;

public interface BaseDao<T> {
	
	public void save(T t);
	
	public void delete(T t);
	
	public T findById(Integer i);
	
	/**
	 * ������Բ���
	 * @param propertyName
	 * @param value
	 * @return
	 */
	public List<T> findByProperty(String propertyName, Object value);
	
	public List<T> findAll();
	/**
	 * �����ѹ�״̬�Ķ���
	 * @param t
	 * @return
	 */
	public T merge(T t);
	public List query(String hql);
	public List query(String hql, int pageNo, int pageSize);
	/** 统计指定类的所有持久化对象 */
	public int countAll(String clazz);
	/** 统计指定类的查询结果 */
	public int countQuery(String hql);
}
